A Compiler for Rewrite Programs in Associative-Commutative Theories
نویسندگان
چکیده
We address the problem of term normalisation modulo associativecommutative (AC) theories, and describe several techniques for compiling many-to-one ACmatching and reduced term construction. The proposed matching method is based on the construction of compact bipartite graphs, and is designed for working very efficiently on specific classes of AC patterns. We show how to refine this algorithm to work in an eager way. General patterns are handled through a program transformation process. Variable instantiation resulting from the matching phase and construction of the resulting term are also addressed. Our experimental results with the system ELAN provide strong evidence that compilation of many-to-one AC normalisation using the combination of these few techniques is crucial for improving the performance of algebraic programming languages.
منابع مشابه
Promoting rewriting to a programming language: a compiler for non-deterministic rewrite programs in associative-commutative theories
First-order languages based on rewrite rules share many features with functional languages. But one difference is that matching and rewriting can be made much more expressive and powerful by incorporating some built-in equational theories. To provide reasonable programming environments, compilation techniques for such languages based on rewriting have to be designed. This is the topic addressed...
متن کاملA Dependency Pair Framework for A∨C-Termination
The development of powerful techniques for proving termination of rewriting modulo a set of equations is essential when dealing with rewriting logic-based programming languages like CafeOBJ, Maude, OBJ, etc. One of the most important techniques for proving termination over a wide range of variants of rewriting (strategies) is the dependency pair approach. Several works have tried to adapt it to...
متن کاملAutomated Veri cation by Induction and Associative-Commutative Operators
Theories with associative and commutative (AC) operators, such as arithmetic, process algebras, boolean algebras, sets, : : : are ubiquitous in software and hardware veriication. These AC operators are diicult to handle by automatic deduction since they generate complex proofs. In this paper, we present new techniques for combining induction and AC reasoning, in a rewrite-based theorem prover. ...
متن کاملAutomated Verification by Induction with Associative-Commutative Operators
Theories with associative and commutative (AC) operators, such as arithmetic, process algebras, boolean algebras, sets, : : : are ubiquitous in software and hardware veriication. These AC operators are diicult to handle by automatic deduction since they generate complex proofs. In this paper, we present new techniques for combining induction and AC reasoning, in a rewrite-based theorem prover. ...
متن کاملAny Ground Associative-commutative Theory Has a Nite Canonical System
We show that theories presented by a set of ground equations with several associative-commutative (AC) symbols always admit a nite canonical system. This result is obtained through the construction of a reduction ordering which is AC-compatible and total on the set of congruence classes generated by the associativity and commutativity axioms. As far as we know, this is the rst ordering with suc...
متن کامل